// pages/user/index.js

const app = getApp()
Page({

  /**
   * 页面的初始数据
   */
  data: {
     // 头部导航栏的高度
     statusBarHeight: app.globalData.statusBarHeight,
    // userInfo: {},
    userPhone:null,
    isLogin:false,
    skipPhone:null,

    // 用户id
    userId:null,
    // 默认头像
    headPortrait:"https://img.bugela.com/uploads/2021/04/26/TX9490_04.jpg",

    // 商品推荐
    HotData:null,
    orderStatus:[
      {
        icon:"gold-coin",
        title:"待付款"
      },
      {
        icon:"card",
        title:"待发货"
      },
      {
        icon:"bag",
        title:"待收货"
      },
      {
        icon:"checked",
        title:"已完成"
      }
    ],
    myServeData:[
      {
        img:"../../images/09_03.png",
        title:"秋星之家"
      },
      {
        img:"../../images/09_05.png",
        title:"服务网点"
      },
      {
        img:"../../images/09_07.png",
        title:"耗材服务"
      },
      {
        img:"../../images/09_09.png",
        title:"在线说明书"
      },
      {
        img:"../../images/09_15.png",
        title:"在线客服"
      },
      {
        img:"../../images/09_16.png",
        title:"以旧换新"
      },
      {
        img:"../../images/09_17.png",
        title:"申请售后"
      },
      {
        img:"../../images/09_18.png",
        title:"收货地址"
      }
    ]
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
   
  },
  // 监听页面显示
  onShow(){
    // 获取用户数据
    this.getUserInfo()
    // 商品推荐
    this.Related()
    // 根据手机号获取用户id
    this.getUserId()
    // 根据id获取用户头像
   
      this.getHead()
  
   

    
  },

    // 通过手机号查询用户id
    getUserId(){
      wx.cloud.callFunction({
        name:"phone_get_user_id",
        data:{
          phone:wx.getStorageSync('userInfo').phone
        }
      }).then(res=>{
        // console.log("通过手机号查询用户id res",res);
        if(res.result.data.length>0){
          this.setData({
            userId:res.result.data[0]._id
          })
          wx.setStorageSync('userId', res.result.data[0]._id)
        }
      }).catch(err=>{
        console.log("通过手机号查询用户id err",err);
      })
    },

     // 上传头像
  clickHead(){
    // console.log(this.data.isLogin);
    // 如果没有登录 跳登录
    if(!this.data.isLogin){
      wx.showToast({
        title: '请先登录!',
        duration: 1000,
        icon: "error",
      })

      wx.navigateTo({
        url: '../login/login',
      })
      
    }else{
         // 选择图片
    wx.chooseMedia({
      count:1,
      mediaType:["image"],
      success:(res)=>{
        // console.log("选择图片",res);
        let path = res.tempFiles[0].tempFilePath
        // 更新前端数据
        this.setData({
          headPortrait:path
        })
        // console.log(this.data.headPortrait);
        this.updateAvatarUrl(this.data.headPortrait)
      }
    })
    }
  },


  updateAvatarUrl(headPortrait){
    // 获取登录的用户id
    let userId = this.data.userId
    wx.cloud.callFunction({
      name:"update_head",
      data:{
        userId,
        headPortrait
      }
    }).then(res=>{
      // console.log("更新用户头像res",res);
     if(res.result.stats.updated>0){
       this.getHead()
     }
    }).catch(err=>{
      console.log("更新用户头像err",err);
    })
  },

    // 通过id获取头像
    getHead(){
      wx.showLoading({
        title: '数据加载中',
      })
      // console.log(this.data.userId);

      wx.cloud.callFunction({
        name:"get_head",
        data:{
          id:wx.getStorageSync('userId'),
        }
      }).then(res=>{
        // console.log("根据id获取用户头像res",res);
        wx.hideLoading()
        if(res.result.data.length>0){
          // 保存用户头像
          this.setData({
            headPortrait:res.result.data[0].userImg
            
          })

          // console.log(this.data.headPortrait);
        }
      }).catch(err=>{
        wx.hideLoading()

        console.log("根据id获取用户头像err",err);
      })
    },

  // 跳订单
  goOrder(){
    wx.navigateTo({
      url: '../order/order',
    })
  },
  // 跳登录
  goLogin(){
    wx.navigateTo({
      url: '../login/login',
    })
  },

     // 猜你喜欢数据
     Related(){
      //  随机数组
      let arr=[7805,18075,13588,16367,15793,15694,14789,18009,16535,15962,13873,10000297,15897,16326,17971]
      // 随机商品id
      let randomId = arr[Math.floor(Math.random()*arr.length)]
      // console.log(randomId);
      // console.log(randomId);
      wx.request({
        method:"GET",
        url: 'https://apis.netstart.cn/xmsc/miproduct/recom_btm',
        data:{
          commodity_id:randomId
        },
        success:res =>{
          // console.log("猜你喜欢",res);
          if(res.data.code==0){
            this.setData({
              HotData:res.data.data.related_recommend.data
            })
          }
          
        },
        fail:err =>{
          console.log("猜你喜欢",err);
        }
      })
    },


  // 跳地址
  goAddress(){
    wx.navigateTo({
      url: '../address/index',
    })
  },
  // 跳登录
  goLogin(){
    wx.navigateTo({
      url: '../login/login',
    })
  },
  // 跳设置
  goSet(){
    wx.navigateTo({
      url: '../set/set?userPhone='+this.data.skipPhone,
    })
  },

  goOrder(){
    wx.navigateTo({
      url: '../order/order',
    })
  },

  // 获取用户数据
  getUserInfo(){
    // 判断用户是否登录
    let _id = wx.getStorageSync('_id');
    if(!_id){
      return
    }
    wx.showLoading({
      title:"加载中"
    })

    wx.cloud.callFunction({
      name:'valid_user',
      data:{
        _id
      }
    }).then(res=>{
      console.log("获取登录状态res=>",res);
      wx.hideLoading()

      if(res.result.data.length>0){
          
        this.setData({
          isLogin:res.result.data[0].loginStatus,
          userPhone:res.result.data[0].phone.replace(/^(.{3})(?:\d+)(.{4})$/, "$1****$2"),
          // 用于跳转设置的未脱敏手机号
          skipPhone:res.result.data[0].phone
        })
      }
    }).catch(err=>{
      console.log("获取登录状态err=>",err);
      wx.hideLoading()
    })
  },
      // 根据商品ID获取商品详情数据
      getProductdetail(e){
        // 获取点击的商品ID
        let productid = e.currentTarget.dataset.id
        wx.showLoading({
          title: '数据加载中',
        })
        wx.request({
          method:'GET',
          url:"https://apis.netstart.cn/xmsc/miproduct/view",
          data:{
            commodity_id:productid
          },
          success:res =>{
            console.log("recommendProductdetail res=>",res);
            // 转string
            let productDetail = JSON.stringify(res.data.data)
            // 成功后跳转详情页
            wx.navigateTo({
              url: '../../pages/productDetail/productDetail?productDetail='+encodeURIComponent(productDetail),
            })
            this.setData({
              Productdetail:res.data.data
            })
            wx.hideLoading()
          },
          fail:err=>{
            console.log("recommendProductdetail err=>",err);
            wx.hideLoading()
          }
        })
      },
  
  
})